Synthesizers and other electronic musical instruments have long been provided with a selection of electronically generated or pre-recorded rhythm tracks that provide guidance and accompaniment to the music played by the user. With the merger of computer assisted electronic instruments and virtual instruments generated by computer software, additional guidance has been provided, for example in the form of an indication of which key to press next in order to play, and learn, a specific (pre-programmed) melody, or which chord to play next in order to follow a specific chord progression.
Other tools make it possible to generate accompaniment or experiment with composition by designing a chord progression and selecting a rhythm pattern.
However, most of these solutions require either that a specific melody is pre-programmed to be followed exactly by the untrained player, or they allow users who already have some musical skills to compose and perhaps improvise freely on top of the composed chord progression. People that are not particularly musically sophisticated, or without the skill to improvise on a particular instrument, there are few alternatives that provide guidance, but at the same time leaves the user free to improvise. Consequently, there is a need for alternatives that provide assistance or guidance to a user without requiring pre-programming of a specific melody, but allows the user to play and improvise freely.